home *** CD-ROM | disk | FTP | other *** search
- /*--------------------------------------------------------------------------*/
- /* */
- /* */
- /* ------------ Bit-Bucket Software <no-Inc> */
- /* \ 10001101 / Writers and Distributors of */
- /* \ 011110 / No-Cost<no-tm> Software. */
- /* \ 1011 / */
- /* ------ */
- /* */
- /* Copyright (C) 1987, 1988, 1989 by Robert Hartman and Vincent Perriello */
- /* */
- /* */
- /* Screen Buffer Definitions used in BinkleyTerm 2.10 */
- /* */
- /* */
- /* For complete details of the licensing restrictions, please refer */
- /* to the License agreement, which is published in its entirety in */
- /* the MAKEFILE and BT.C, and also contained in the file LICENSE.210. */
- /* */
- /* USE OF THIS FILE IS SUBJECT TO THE RESTRICTIONS CONTAINED IN THE */
- /* BINKLEYTERM LICENSING AGREEMENT. IF YOU DO NOT FIND THE TEXT OF */
- /* THIS AGREEMENT IN ANY OF THE AFOREMENTIONED FILES, OR IF YOU DO */
- /* NOT HAVE THESE FILES, YOU SHOULD IMMEDIATELY CONTACT THE AUTHORS */
- /* AT THE ADDRESSES LISTED BELOW. IN NO EVENT SHOULD YOU PROCEED TO */
- /* USE THIS FILE WITHOUT HAVING ACCEPTED THE TERMS OF THE */
- /* BINKLEYTERM LICENSING AGREEMENT, OR SUCH OTHER AGREEMENT AS YOU */
- /* ARE ABLE TO REACH WITH THE AUTHORS. */
- /* */
- /* */
- /* The Authors can be reached at the following addresses: */
- /* */
- /* Robert C. Hartman Vincent E. Perriello */
- /* Spark Software VEP Software */
- /* 427-3 Amherst Street 111 Carroll Street */
- /* CS2032, Suite 232 Naugatuck, CT 06770 */
- /* Nashua, NH 03061 */
- /* */
- /* FidoNet 1:132/101 FidoNet 1:141/491 */
- /* Data (603) 888-8179 Data (203) 729-7569 */
- /* */
- /* Please feel free to contact us at any time to share your comments */
- /* about our software and/or licensing policies. */
- /* */
- /*--------------------------------------------------------------------------*/
-
- /* $Header: SBUF.H 0.1 88/04/01 03:13:12 Bob Exp $ */
-
- /*
- * $Log: SBUF.H $
- * Revision 0.1 88/04/01 03:13:12 Bob
- * Initial check-in
- *
- */
-
- #define SB_OK 0
- #define SB_ERR (-1)
-
- /* screen buffer constants */
- extern int SB_ROWS;
- extern int SB_COLS;
-
- #define SB_SIZ SB_ROWS * SB_COLS
-
- /* screen character/attribute buffer element definition */
- typedef struct
- {
- unsigned char ch; /* character */
- unsigned char attr; /* attribute */
- } BYTEBUF, *BYTEBUFP;
-
- typedef union
- {
- BYTEBUF b;
- unsigned int cap; /* character/attribute pair */
- } CELL, *CELLP;
-
- /* screen buffer control structure */
- typedef struct
- {
- /* current position */
- int row, col;
-
- /* pointer to screen buffer array */
- CELLP bp;
-
- /* changed region per screen buffer row */
- int *lcol; /* left end of changed
- * region */
- int *rcol; /* right end of changed
- * region */
-
- /* buffer status */
- unsigned int flags;
- } BUFFER, *BUFFERP;
-
- /* buffer flags values */
- #define SB_DELTA 0x01
- #define SB_RAW 0x02
- #define SB_DIRECT 0x04
- #define SB_SCROLL 0x08
- #define SB_SYNC 0x10
-
- /* coordinates of a window (rectangular region) on the screen buffer */
- typedef struct
- {
- /* current position */
- int row, col;
-
- /* window boundaries */
- int r0, c0; /* upper left corner */
- int r1, c1; /* lower right corner */
-
- /* scrolling region boundaries */
- int sr0, sc0; /* upper left corner */
- int sr1, sc1; /* lower right corner */
-
- /* window buffer flags */
- unsigned int wflags;
- } REGION, *REGIONP;
-
- #define HIST_BBS_ROW 1
- #define HIST_MAIL_ROW 1
- #define HIST_ATT_ROW 2
- #define HIST_CONN_ROW 3
- #define HIST_FILE_ROW 4
- #define HIST_LAST_ROW 5
- #define HIST_COL 13
- #define HIST_COL2 8
-
- #define SET_EVNT_ROW 2
- #define SET_PORT_ROW 3
- #define SET_TIME_ROW 1
- #define SET_DATE_ROW 4
- #define SET_STAT_ROW 4
- #define SET_TASK_ROW 5
-
- #define SET_COL 10
- #define SET_TIME_COL 2
-
- #define CALL_STAT_ROW 8
-